Design Exploration for Decimal Floating-Point Arithmetic
نویسندگان
چکیده
Commercial applications and databases typically store numerical data in decimal format. Currently, however, microprocessors do not provide instructions or hardware support for decimal floating-point arithmetic [ 1 ]. Consequently, decimal numbers are often read into computers, converted to binary numbers, and then processed using binary floating-point arithmetic. Results are then converted back to decimal before being stored. Besides being time-consuming, this process is error-prone, since most decimal numbers cannot be exactly represented as binary numbers [2,3]. Thus, if binary floating-point arithmetic is used to process decimal data, unexpected results may occur after a few computations [4]. In many commercial applications, including financial analysis, banking, tax calculation, currency conversions, insurance, accounting, and e-commerce, the errors introduced by converting between decimal and binary numbers are unacceptable and may violate legal accuracy requirements. Therefore, these applications often use software to perform decimal floating-point arithmetic. Although this approach eliminates errors due to converting between binary and decimal numbers, it leads to long execution times for numerically intensive commercial applications, since software implementations of decimal floating-point operation are typically 100 to 1,000 times slower than equivalent binary floating-point operations in hardware [ 5]. Due the growing importance of decimal floating-point arithmetic, specifications for it have recently been added to the draft revision of the IEEE 754 Standard for Floating-Point Arithmetic [6]. For this project, we will research, design, and evaluate instruction set extensions, arithmetic algorithms, and hardware designs for decimal floating-point arithmetic. We will also enhance computer simulators and compilers to better evaluate the benefits of hardware support for decimal floating-point arithmetic. This research will include: • Investigating decimal floating-point instruction set extensions. We will select these instructions based on (a) their usefulness in reducing the execution times of commercial applications, (b) their ability to meet the requirements of the revised IEEE 754 Standard, and (c) their anticipated ease of implementation on high-performance processors. To estimate the execution times of current decimal floating-point software, we will use the decNumber C library [7], commercial benchmarks, the SimpleScalar simulator [8], and the prof and gprof profiling tools. • Developing and analyzing novel arithmetic algorithms and hardware designs. We will investigate the use of specialized encodings, hardware sharing, parallel speculative result computation, carry-free decimal addition, and other techniques to improve the area, critical path delay, performance, and/or power consumption of decimal floating-point arithmetic. We will also
منابع مشابه
IEEE 754-2008 Decimal Floating-Point for Intel
A brief description is provided of the decimal floating-point support available for Intel® Architecture processors, compliant with the IEEE Standard 754-2008 for Floating-Point Arithmetic [1]. Some performance results are included.
متن کاملDecimal Floating-Point: Algorism for Computers
Origins of decimal arithmetic • Decimal (base 10) arithmetic has been used for thousands of years • Algorism (Indo-Arabic place value system) in use since 800 AD • Many early computers were decimal Decimal computation today • Pervasive in financial, commercial, and human-centric applications – often a legal requirement • Benchmarks do not reflect actual use • 55% of numeric data in databases ar...
متن کاملRadix - 10 Parallel Decimal Multiplier
This paper introduces novel architecture for Radix-10 decimal multiplier. The new generation of highperformance decimal floating-point units (DFUs) is demanding efficient implementations of parallel decimal multiplier. The parallel generation of partial products is performed using signed-digit radix-10 recoding of the multiplier and a simplified set of multiplicand multiples. The reduction of p...
متن کاملReference Software Implementation of the Ieee 754r Decimal Floating-point Arithmetic
The IEEE Standard 754-1985 for Binary Floating-Point Arithmetic [1] is being revised [2], and an important addition to the current text is the definition of decimal floating-point arithmetic [3]. This is aimed mainly to provide a robust, reliable framework for financial applications that are often subject to legal requirements concerning rounding and precision of the results in the areas of ban...
متن کاملDecimal Division Using the Newton–Raphson Method and Radix-1000 Arithmetic
Computer arithmetic is predominantly performed using binary arithmetic because the hardware implementations of the operations are simpler than those for decimal computation. However, many decimal fractions cannot be represented exactly as binary fractions with a finite number of bits. The value 0.1, for example, can only be represented as an infinitely recurring binary number. If a binary appro...
متن کامل